<?php

# Mail4you 0.9.1 beta by seg0ro http://mobilarts.ru
# Not for sale! (не для продажи!)

define('_IN_JOHNCMS', 1);

$headmod = 'pradd';
require_once ("../incfiles/core.php");
$textl = 'Почта';

if ($act != 'in')
    require_once ("../incfiles/head.php");

if (!$user_id)
{
    echo functions::display_error('Только для авторизованных!');
    require_once ('../incfiles/end.php');
    exit;
}
$realtime = time(); //Заплатка

////////////////////////////////////////////////////////////////////////////////
$ext_theme = array('thm'); // Файлы тем
$ext_java = array('jar', 'jad'); // Файлы Java
$ext_sis = array('sis', 'sisx'); // Файлы SIS
$ext_3d = array('p3d', 's3d'); // Файлы 3d моделей
$ext_pic = array(
    'jpg',
    'jpeg',
    'gif',
    'png',
    'bmp',
    'wmf',
    'wbmp'); // Файлы картинок
$ext_zip = array(
    'zip',
    'rar',
    '7z',
    'tar',
    'gz'); // Файлы архивов
$ext_video = array(
    '3gp',
    'avi',
    'flv',
    'mpeg',
    'mp4'); // Файлы видео
$ext_audio = array(
    'mp3',
    'amr',
    'mid',
    'midi'); // Звуковые файлы
$ext_other = array('txt'); // Другие типы файлов (что не перечислены выше)

$set_user['avatar'] = false; // убирает Аватар (Оставить значение FALSE)
$upl = true; // загрузка файлов (TRUE - разрешено, FALSE - запрещено)
$qansw = true; // форма быстрого ответа (TRUE - разрешено, FALSE - запрещено)
$spam_id = 1; // id, кому приходят жалобы на спам
$capcha = 0; /*$rights ? 0 : 1;*/ // проверочная картинка
$translit = false;

$type = $_GET['f'] == 'in' ? 'in' : 'out';
$comp = (eregi('Windows', $agn) || eregi('Linux', $agn) || eregi('Mac', $agn) ||
    eregi('Mini/5', $agn) || eregi('UC Browser', $agn)) ? 1 : 0;

// функция отображения писем в списке
function show_item($item = array(), $type)
{
    global $upl;
    if ($type != 'new')
        $out = '<input type="checkbox" name="delch[]" value="' . $item['id'] . '" /> ';
    if ($type == 'new')
        $type = 'in';
    $text = preg_replace('#\[c\](.*?)\[/c\]#si', '', $item['text']);
    $text = mb_substr($text, 0, 100);
    $array = array(
        1 => '<b>!</b> ',
        2 => '<b>?</b> ',
        3 => '<b>:)</b> ',
        4 => '<b>:(</b> ',
        5 => '');
    if ($upl)
    {
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_f` WHERE `refid`='" . $item['id'] .
            "' LIMIT 1 "), 0))
            $out .= '<img src="../images/attach.png" width="16" height="16" align="middle" alt=""/> ';
    }
    $out .= $array[$item['type']];
    $out .= '<a href="?act=' . $type . '&amp;id=' . $item['id'] . '">' . ($type ==
        'in' ? 'от: ' . $item['from_login'] : 'для: ' . $item['to_login']) . '' .
        '</a> <span class="gray">(' . functions::display_date($item['time']) .
        ')</span>';
    $out .= '<div class="sub">' . ($item['read'] ? '<span class="green">Прочитано' :
        '<span class="red">Непрочитано') . '</span><br />Текст: ' . functions::checkout($text,
        2, 2) . '...</div>';
    return $out;
}

function display_user($user)
{
    /*global $rootpath, $mod;*/
    $out = false;

    if (!$user['id'])
    {
        $out = '<b>' . core::$lng['guest'] . '</b>';
        if (!empty($user['name']))
            $out .= ': ' . $user['name'];
    } else
    {
        /*if (core::$user_set['avatar']) {
        $out .= '<table cellpadding="0" cellspacing="0"><tr><td>';
        if (file_exists(($rootpath . 'files/users/avatar/' . $user['id'] . '.png')))
        $out .= '<img src="' . core::$system_set['homeurl'] . '/files/users/avatar/' . $user['id'] . '.png" width="32" height="32" alt="" />&#160;';
        else
        $out .= '<img src="' . core::$system_set['homeurl'] . '/images/empty.png" width="32" height="32" alt="" />&#160;';
        $out .= '</td><td>';
        }*/
        if ($user['sex'])
            $out .= '<img src="' . core::$system_set['homeurl'] . '/theme/' . core::$user_set['skin'] .
                '/images/' . ($user['sex'] == 'm' ? 'm' : 'w') . ($user['datereg'] > time() -
                86400 ? '_new' : '') . '.png" width="16" height="16" align="middle" alt="' . ($user['sex'] ==
                'm' ? 'М' : 'Ж') . '" />&#160;';
        else
            $out .= '<img src="' . core::$system_set['homeurl'] .
                '/images/del.png" width="12" height="12" align="middle" />&#160;';
        $out .= !core::$user_id || core::$user_id == $user['id'] ? '<b>' . $user['name'] .
            '</b>' : '<a href="' . core::$system_set['homeurl'] . '/users/profile.php?user=' .
            $user['id'] . '"><b>' . $user['name'] . '</b></a>';
        $rank = array(
            0 => '',
            1 => '(GMod)',
            2 => '(CMod)',
            3 => '(FMod)',
            4 => '(DMod)',
            5 => '(LMod)',
            6 => '(Smd)',
            7 => '(Adm)',
            9 => '(SV!)');
        $out .= ' ' . $rank[$user['rights']];
        $out .= (time() > $user['lastdate'] + 300 ? '<span class="red"> [Off]</span>' :
            '<span class="green"> [ON]</span>');
        /*if (self::$user_set['avatar'])
        $out .= '</td></tr></table>';*/
    }

    /*
    if (isset($arg['body']))
    $out .= '<div>' . $arg['body'] . '</div>';
    $ipinf = !isset($arg['iphide']) && (self::$user_rights || ($user['id'] && $user['id'] == self::$user_id)) ? 1 : 0;
    $lastvisit = time() > $user['lastdate'] + 300 && isset($arg['lastvisit']) ? self::display_date($user['lastdate']) : false;
    if ($ipinf || $lastvisit || isset($arg['sub']) && !empty($arg['sub']) || isset($arg['footer'])) {
    $out .= '<div class="sub">';
    if (isset($arg['sub']))
    $out .= '<div>' . $arg['sub'] . '</div>';
    if ($lastvisit)
    $out .= '<div><span class="gray">' . self::$lng['last_visit'] . ':</span> ' . $lastvisit . '</div>';
    $iphist = '';
    if ($ipinf) {
    $out .= '<div><span class="gray">' . self::$lng['browser'] . ':</span> ' . $user['browser'] . '</div>' .
    '<div><span class="gray">' . self::$lng['ip_address'] . ':</span> ';
    $hist = $mod == 'history' ? '&amp;mod=history' : '';
    $ip = long2ip($user['ip']);
    if (self::$user_rights && isset($user['ip_via_proxy']) && $user['ip_via_proxy']) {
    $out .= '<b class="red"><a href="' . self::$system_set['homeurl'] . '/' . self::$system_set['admp'] . '/index.php?act=search_ip&amp;ip=' . $ip . $hist . '">' . $ip . '</a></b> / ';
    $out .= '<a href="' . self::$system_set['homeurl'] . '/' . self::$system_set['admp'] . '/index.php?act=search_ip&amp;ip=' . long2ip($user['ip_via_proxy']) . $hist . '">' . long2ip($user['ip_via_proxy']) . '</a>';
    } elseif (self::$user_rights) {
    $out .= '<a href="' . self::$system_set['homeurl'] . '/' . self::$system_set['admp'] . '/index.php?act=search_ip&amp;ip=' . $ip . $hist . '">' . $ip . '</a>';
    } else {
    $out .= $ip . $iphist;
    }
    if (isset($arg['iphist'])) {
    $iptotal = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_users_iphistory` WHERE `user_id` = '" . $user['id'] . "'"), 0);
    $out .= '<div><span class="gray">' . self::$lng['ip_history'] . ':</span> <a href="' . self::$system_set['homeurl'] . '/users/profile.php?act=ip&amp;user=' . $user['id'] . '">[' . $iptotal . ']</a></div>';
    }
    $out .= '</div>';
    }
    if (isset($arg['footer']))
    $out .= $arg['footer'];
    $out .= '</div>';
    }*/
    return $out;
}


// функция bb-кодов
function bbcod($form, $field)
{
    /*global $comp;
    if ($comp)
    {
    $out = '<script language="JavaScript" type="text/javascript">
    function tag(text1, text2) {
    if ((document.selection)) {
    document.' . $form . '.' . $field . '.focus();
    document.' . $form .
    '.document.selection.createRange().text = text1+document.' . $form .
    '.document.selection.createRange().text+text2;
    } else if(document.forms[\'' . $form . '\'].elements[\'' . $field . '\'].selectionStart!=undefined) {
    var element = document.forms[\'' . $form . '\'].elements[\'' . $field . '\'];
    var str = element.value;
    var start = element.selectionStart;
    var length = element.selectionEnd - element.selectionStart;
    element.value = str.substr(0, start) + text1 + str.substr(start, length) + text2 + str.substr(start + length);
    } else document.' . $form . '.' . $field . '.value += text1+text2;
    }
    </script>
    <a href="javascript:tag(\'[url=]\', \'[/url]\')"><img src="../images/bb/l.png" border="0" alt="url" title="Ссылка" /></a><a href="javascript:tag(\'[b]\', \'[/b]\')"><img src="../images/bb/b.png" border="0" alt="b" title="Жирный"/></a><a href="javascript:tag(\'[i]\', \'[/i]\')"><img src="../images/bb/i.png" border="0" alt="i" title="Наклонный"/></a><a href="javascript:tag(\'[u]\', \'[/u]\')"><img src="../images/bb/u.png" border="0" alt="u" title="Подчёркнутый"/></a><a href="javascript:tag(\'[s]\', \'[/s]\')"><img src="../images/bb/s.png" border="0" alt="s" title="Перечёркнутый"/></a><a href="javascript:tag(\'[c]\', \'[/c]\')"><img src="../images/bb/q.png" border="0" alt="quote" title="Цитата"/></a><a href="javascript:tag(\'[red]\', \'[/red]\')"><img src="../images/bb/re.png" border="0" alt="red" title="Красный"/></a><a href="javascript:tag(\'[green]\', \'[/green]\')"><img src="../images/bb/gr.png" border="0" alt="green" title="Зелёный"/></a><a href="javascript:tag(\'[blue]\', \'[/blue]\')"><img src="../images/bb/bl.png" border="0" alt="blue" title="Синий"/></a><br />';
    } else
    {
    $out = '';
    }
    return $out;*/
    return bbcode::auto_bb($form, $field);
}
////////////////////////////////////////////////////////////////////////////////

switch ($act)
{
        /**массовая очистка*/
    case 'clean':
        if ($rights >= 8)
        {
            if (isset($_POST['submit']))
            {
                $clean_t = $_POST['clean_t'];
                switch ($clean_t)
                {
                    case '1':
                        $sql = $realtime - 31104000;
                        break;

                    case '2':
                        $sql = $realtime - 15552000;
                        break;

                    case '3':
                        $sql = $realtime - 2592000;
                        break;

                    case '4':
                        $sql = '';
                        break;

                    default:
                        echo functions::display_error('Не введено условие!<a href="?act=clean"><br />Повторить</a>');
                        require_once ('../incfiles/end.php');
                        exit;
                }
                if ($clean_t == 4)
                {
                    if (intval($_POST['read']) == 3)
                    {
                        mysql_query("TRUNCATE TABLE `mail`");
                        if ($upl)
                        {
                            $file = mysql_query("SELECT * FROM `mail_f` ");
                            if (mysql_num_rows($file))
                            {
                                while ($file = mysql_fetch_array($file))
                                {
                                    unlink('files/' . $file['name']);
                                }
                            }
                            mysql_query("TRUNCATE TABLE `mail_f`");
                        }
                    } else
                    {
                        if ($upl)
                        {
                            $req = mysql_query("SELECT * FROM `mail` WHERE `read`='" . abs(intval($_POST['read'])) .
                                "' ");
                            if (mysql_num_rows($req))
                            {
                                while ($res = mysql_fetch_array($req))
                                {
                                    $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $res['id'] .
                                        "' LIMIT 1 ");
                                    if (mysql_num_rows($file))
                                    {
                                        $file = mysql_fetch_array($file);
                                        unlink('files/' . $file['name']);
                                        mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                                    }
                                }
                            }
                        }
                        mysql_query("DELETE FROM `mail` WHERE `read`='" . abs(intval($_POST['read'])) .
                            "' ");
                        mysql_query("OPTIMIZE TABLE `mail`");
                    }
                    echo '<div class="menu">Почта очищена!<br /><a href="?">Далее</a></div>';
                } else
                {
                    $req = mysql_query("SELECT * FROM `mail` WHERE " . (intval($_POST['read']) == 3 ?
                        "" : "`read`='" . abs(intval($_POST['read'])) . "' AND") . " `time` < '" . $sql .
                        "' ");
                    if (mysql_num_rows($req))
                    {
                        while ($res = mysql_fetch_array($req))
                        {
                            if ($upl)
                            {
                                $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $res['id'] .
                                    "' LIMIT 1 ");
                                if (mysql_num_rows($file))
                                {
                                    $file = mysql_fetch_array($file);
                                    unlink('files/' . $file['name']);
                                    mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                                }
                            }
                            mysql_query("DELETE FROM `mail` WHERE `id`='" . $res['id'] . "' LIMIT 1 ");
                        }
                        mysql_query("OPTIMIZE TABLE `mail`");
                        echo '<div class="menu">Почта очищена!<br /><a href="?">Далее</a></div>';
                    } else
                    {
                        echo '<div class="menu">Нечего чистить!<br /><a href="?">Почта</a></div>';
                    }
                }
            } else
            {
                echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=admin">Админка</a> | Чистка почты</div>';
                echo '<form action="?act=clean" method="post">';
                echo '<div class="rmenu"><select name="read"><option value="0" selected="selected">Непрочитанные</option><option value="1">Прочитанные</option><option value="3">Все</option></select> старше:<br />';
                echo '<input type="radio" value="1" name="clean_t" checked="checked" /> года<br />';
                echo '<input type="radio" value="2" name="clean_t" /> полу года<br />';
                echo '<input type="radio" value="3" name="clean_t" /> месяца<br />';
                echo '<input type="radio" value="4" name="clean_t" /> все<br />';
                echo '<input type="submit" name="submit" value="Очистить" /></div></form>';
            }
        } else
        {
            echo functions::display_error('У вас недостаточно прав!');
        }
        break;

        /**Удаление активности пользователя*/
    case 'userdel':
        if ($rights >= 8)
        {
            if (isset($_POST['submit']))
            {
                if (empty($_POST['user']))
                {
                    echo functions::display_error('Вы не ввели ID!<a href="?act=userdel"><br />Повторить</a>');
                    require_once ('../incfiles/end.php');
                    exit;
                }

                if (isset($_GET['delout']))
                {
                    $req = mysql_query("SELECT * FROM `mail` WHERE `from_id`='" . intval($_POST['user']) .
                        "' ");
                    if (mysql_num_rows($req))
                    {
                        while ($res = mysql_fetch_array($req))
                        {
                            if ($upl)
                            {
                                $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $res['id'] .
                                    "' LIMIT 1 ");
                                if (mysql_num_rows($file))
                                {
                                    $file = mysql_fetch_array($file);
                                    unlink('files/' . $file['name']);
                                    mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                                }
                            }
                        }
                        mysql_query("DELETE FROM `mail` WHERE `from_id`='" . intval($_POST['user']) .
                            "' ");
                    }
                    echo '<div class="phdr">Шаг 2</div>';
                    echo '<form action="?act=userdel&amp;delin" method="post">';
                    echo '<div class="rmenu"><input type="hidden" name="user" value="' . intval($_POST['user']) .
                        '" />';
                    echo '<input type="submit" name="submit" value="Удалить (входящие)" /></div></form>';
                } elseif (isset($_GET['delin']))
                {
                    $req = mysql_query("SELECT * FROM `mail` WHERE `to_id`='" . intval($_POST['user']) .
                        "' ");
                    if (mysql_num_rows($req))
                    {
                        while ($res = mysql_fetch_array($req))
                        {
                            if ($upl)
                            {
                                $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $res['id'] .
                                    "' LIMIT 1 ");
                                if (mysql_num_rows($file))
                                {
                                    $file = mysql_fetch_array($file);
                                    unlink('files/' . $file['name']);
                                    mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                                }
                            }
                        }
                        mysql_query("DELETE FROM `mail` WHERE `to_id`='" . intval($_POST['user']) . "' ");
                    }
                    echo '<div class="menu">Активность пользователя очищена!<br /><a href="?">Почта</a></div>';
                } else
                {
                    echo '<div class="phdr">Шаг 1</div>';
                    echo '<form action="?act=userdel&amp;delout" method="post">';
                    echo '<div class="rmenu"><input type="hidden" name="user" value="' . intval($_POST['user']) .
                        '" />';
                    echo '<input type="submit" name="submit" value="Удалить (исходящие)" /></div></form>';
                }
            } else
            {
                echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=admin">Админка</a> | Чистка активности пользователя</div>';
                echo '<form action="?act=userdel" method="post">';
                echo '<div class="menu">';
                echo 'ID пользователя: <input type="text" name="user" size="2" /></div>';
                echo '<div class="rmenu"><input type="submit" name="submit" value="Удалить" /></div></form>';
            }
        } else
        {
            echo functions::display_error('У вас недостаточно прав!');
        }
        break;

        /**массовая рассылка*/
    case 'masssend':
        if ($rights >= 8)
        {

            if ($ban['1'] || $ban['3'])
            {
                echo functions::display_error('Вы забанены!');
                require_once ('../incfiles/end.php');
                exit;
            }

            if (isset($_POST['submit']))
            {

                if (empty($_POST['text']))
                {
                    echo functions::display_error('Вы не ввели текст!<a href="?act=masssend"><br />Повторить</a>');
                    require_once ('../incfiles/end.php');
                    exit;
                }

                $text = trim($_POST['text']);
                $txt_check = mysql_fetch_array(mysql_query("SELECT `text` FROM `mail` WHERE `from_id` = '$user_id' ORDER BY `time` DESC LIMIT 1"));

                if ($txt_check['text'] == $text)
                {
                    echo functions::display_error('Такое сообщение уже было!<br /><a href="?">Почта</a>');
                    require_once ('../incfiles/end.php');
                    exit;
                }

                $sql = '';

                $to = $_POST['to'];
                switch ($to)
                {
                    case '1':
                        $sql = " `lastdate` > '" . ($realtime - 300) . "'";
                        break;

                    case '2':
                        $sql .= " `sex` = 'm'";
                        break;

                    case '3':
                        $sql .= " `sex` = 'zh'";
                        break;

                    case '4':
                        $sql .= " `rights` >= '1'";
                        break;

                    case '5':
                        $sql .= " `rights` < '1'";
                        break;

                    case '6':
                        $sql .= '';
                        break;

                    default:
                        echo functions::display_error('Не введено условие!<a href="?act=masssend"><br />Повторить</a>');
                        require_once ('../incfiles/end.php');
                        exit;
                }

                if ($_POST['time_check'])
                {

                    $time = abs(intval($_POST['time']));
                    $typetime = $_POST['typetime'];
                    switch ($typetime)
                    {
                        case '1':
                            if ($time > 60)
                                $time = 60;
                            $time = $time * 60;
                            break;

                        case '2':
                            if ($time > 24)
                                $time = 24;
                            $time = $time * 3600;
                            break;

                        case '3':
                            $time = $time * 86400;
                            break;

                        default:
                            echo functions::display_error('Не введено условие!<a href="?act=masssend"><br />Повторить</a>');
                            require_once ('../incfiles/end.php');
                            exit;
                    }
                    if ($to != 6)
                        $sql .= ' AND';

                    $sql .= " `total_on_site` > '" . $time . "' AND ";
                } else
                {
                    if ($to != 6)
                        $sql .= ' AND';
                }

                $req = mysql_query("SELECT * FROM `users` WHERE $sql `id` !='" . $user_id . "' ");

                if ($_POST['trans'] == 1)
                    $text = trans($text);

                if (mysql_num_rows($req))
                {
                    while ($res = mysql_fetch_array($req))
                    {
                        mysql_query(" INSERT INTO `mail` SET
`time`='" . $realtime . "',
`type`='" . intval($_POST['type']) . "',
`to_id`='" . $res['id'] . "',
`to_login`='" . $res['name'] . "',
`from_id`='" . $spam_id . "',
`from_login`='Система',
`text`='" . mysql_real_escape_string($text) . "',
`del_from`='1'
");

                    }
                    mysql_query("UPDATE `users` SET
      `lastpost` = '" . $realtime . "'
      WHERE `id` = '" . $user_id . "' ");
                    echo '<div class="menu">Письма отправлены!<br /><a href="?">Далее</a></div>';
                } else
                {
                    echo '<div class="menu">Письма не отправлены!<br /><a href="?">Почта</a></div>';
                }
            } else
            {
                echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=admin">Админка</a> | Массовая рассылка</div>';
                echo '<form name="form" action="?act=masssend" method="post">';
                echo '<div class="menu">';
                echo '<input type="radio" value="1" name="to" checked="checked" /> Всем кто онлайн<br />';
                echo '<input type="radio" value="2" name="to" /> Всем <b>М</b><br />';
                echo '<input type="radio" value="3" name="to" /> Всем <b>Ж</b><br />';
                echo '<input type="radio" value="4" name="to" /> Всей администрации<br />';
                echo '<input type="radio" value="5" name="to" /> Всем кроме администрации<br />';
                echo '<input type="radio" value="6" name="to" /> Всем (больше список пользователей - больше нагрузка!)<br />';
                echo '<input type="checkbox" name="time_check" value="1" /> + кто на сайте более <input type="text" value="60" size="2" name="time" /> <select name="typetime"><option value="1" selected="selected">минут(60 макс.)</option><option value="2">часов(24 макс.)</option><option value="3">дней (1 - ...)</option></select><br />';
                echo '</div><div class="b">Метка: <select name="type"><option value="5">Нет</option><option value="1" selected="selected">Важно</option><option value="2">Вопрос</option><option value="3">Радость</option><option value="4">Грусть</option></select></div>';
                echo '<div class="gmenu">Текст:<br />' . bbcod('form', 'text') .
                    '<center><textarea name="text" style="width:98%" cols="30" rows="4"></textarea></center>' .
                    bbcode::auto_smile('form', 'text');
                if ($translit && $set_user['translit'])
                    echo '<input type="checkbox" name="trans" value="1" /> Транслит<br />';
                echo '<input type="submit" name="submit" value="Написать" /><br /><a href="../str/smile.php">Смайлы</a></div></form>';
            }
        } else
        {
            echo functions::display_error('У вас недостаточно прав!');
        }
        break;

        /**изменяем письмо*/
    case 'edit':
        if (!$id)
        {
            echo functions::display_error('Ошибка!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        $req = mysql_query("SELECT * FROM `mail` WHERE `id`='" . $id . "' LIMIT 1 ");
        if (!mysql_num_rows($req))
        {
            echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        $res = mysql_fetch_array($req);
        if ($res['from_id'] != $user_id)
        {
            echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        if ($res['read'])
        {
            echo functions::display_error('Письмо уже прочитано!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }
        if (isset($_POST['submit']))
        {

            if (empty($_POST['text']))
            {
                echo functions::display_error('Вы не ввели текст!<a href="?act=write' . $url .
                    '"><br />Повторить</a>');
                require_once ('../incfiles/end.php');
                exit;
            }
            $text = trim($_POST['text']);

            if ($_POST['trans'] == 1)
                $text = trans($text);

            mysql_query("UPDATE `mail` SET
 `time`='" . $realtime . "',
 `type`='" . intval($_POST['type']) . "',
 `text`='" . mysql_real_escape_string($text) . "'
 WHERE `id`='" . $id . "' LIMIT 1
");

            mysql_query("UPDATE `users` SET
      `lastpost` = '" . $realtime . "'
      WHERE `id` = '" . $user_id . "' ");

            echo '<div class="menu">Письмо изменено!<br /><a href="?act=out&amp;id=' . $id .
                '">Далее</a></div>';
        } else
        {
            echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=out&amp;id=' . $id .
                '">Письмо</a> | Редактирование</div>';
            echo '<form name="form" action="?act=edit&amp;id=' . $id . '" method="post">';
            echo '<div class="menu">Для: <b>' . $res['to_login'] . '</b></div>';
            echo '<div class="b">Метка: <select name="type"><option value="5">Нет</option><option value="1"' . ($res['type'] ==
                1 ? ' selected="selected"' : '') . '>Важно</option><option value="2"' . ($res['type'] ==
                2 ? ' selected="selected"' : '') . '>Вопрос</option><option value="3"' . ($res['type'] ==
                3 ? ' selected="selected"' : '') . '>Радость</option><option value="4"' . ($res['type'] ==
                4 ? ' selected="selected"' : '') . '>Грусть</option></select>';
            echo '</div>';
            echo '<div class="rmenu">Текст:<br />' . bbcod('form', 'text') .
                '<center><textarea name="text" style="width:98%" cols="30" rows="4">' . functions::check($res['text']) .
                '</textarea></center>' . bbcode::auto_smile('form', 'text');
            if ($translit && $set_user['translit'])
                echo '<input type="checkbox" name="trans" value="1" /> Транслит<br />';
            echo '<input type="submit" name="submit" value="Написать" /><br /><a href="../str/smile.php">Смайлы</a></div></form>';
        }
        break;

        /**Пишем письмо*/
    case 'write':
        if ($ban['1'] || $ban['3'])
        {
            echo functions::display_error('Вы забанены!');
            require_once ('../incfiles/end.php');
            exit;
        }

        $url = $id ? '&amp;id=' . $id . '&amp;f=' . $type : '';

        if ($id)
        {
            $check_ignor = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_ignor` WHERE `user_id`='" .
                $id . "' AND `cont_id`='" . $user_id . "' LIMIT 1 "), 0);
            if ($check_ignor)
            {
                echo functions::display_error('Вы в игноре и не можете писать этому пользователю!<br /><a href="?">Почта</a>');
                require_once ('../incfiles/end.php');
                exit;
            }
        }

        if (isset($_POST['submit']))
        {
            $file_att = '';
            $flood = functions::antiflood();
            if ($flood)
            {
                echo functions::display_error('Вы не можете так часто писать!<br />Пожалуйста, подождите ' .
                    $flood . ' сек.<br /><a href="?act=write' . $url . ($type == 'in' ? '&amp;mid=' .
                    intval($_GET['mid']) : '') . '">Назад</a>');
                require_once ('../incfiles/end.php');
                exit;
            }

            $error = false;

            if (empty($_POST['name']))
                $error = 'Вы не ввели имя!<br /><a href="?act=write' . $url . ($type == 'in' ?
                    '&amp;mid=' . intval($_GET['mid']) : '') . '">Повторить</a>';

            if (empty($_POST['text']))
                $error = 'Вы не ввели текст!<a href="?act=write' . $url . ($type == 'in' ?
                    '&amp;mid=' . intval($_GET['mid']) : '') . '"><br />Повторить</a>';

            $text = trim($_POST['text']);

            $txt_check = mysql_fetch_array(mysql_query("SELECT `text` FROM `mail` WHERE `from_id` = '$user_id' ORDER BY `time` DESC LIMIT 1"));
            if ($txt_check['text'] == $text)
                $error = 'Такое сообщение уже было!<br /><a href="?">Почта</a>';

            if ($_POST['name'])
            {
                $search = strtr($_POST['name'], array(
                    '_' => '\\_',
                    '%' => '\\%',
                    '*' => '%'));
                $check = mysql_query("SELECT `id` FROM `users` WHERE `name` LIKE '" .
                    mysql_real_escape_string($search) . "' AND `id`!='" . $user_id . "' LIMIT 1 ");
                if (!mysql_num_rows($check))
                    $error = 'Такого пользователя нет!<br /><a href="?act=write' . $url . ($type ==
                        'in' ? '&amp;mid=' . intval($_GET['mid']) : '') . '">Повторить</a>';

                $user_check = mysql_fetch_assoc($check);
                $check_ignor = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_ignor` WHERE `user_id`='" .
                    $user_check['id'] . "' AND `cont_id`='" . $user_id . "' LIMIT 1 "), 0);
                if ($check_ignor)
                    $error = 'Вы в игноре и не можете писать этому пользователю!<br /><a href="?">Почта</a>';

            }

            if ((empty($_POST['kod']) || mb_strlen($_POST['kod']) < 4) && $capcha)
                $error = 'Не введён проверочный код!<br /><a href="?act=write' . $url . ($type ==
                    'in' ? '&amp;mid=' . intval($_GET['mid']) : '') . '">Повторить</a>';

            if ($_POST['kod'] != $_SESSION['code'] && $capcha)
                $error = 'Проверочный код неверен!<br /><a href="?act=write' . $url . ($type ==
                    'in' ? '&amp;mid=' . intval($_GET['mid']) : '') . '">Повторить</a>';
            unset($_SESSION['code']);

            if ($upl)
            {
                $do_file = false;
                $do_file_mini = false;
                if ($_FILES['fail']['size'] > 0)
                {
                    // Проверка загрузки с обычного браузера
                    $do_file = true;
                    $fname = strtolower($_FILES['fail']['name']);
                    $fsize = $_FILES['fail']['size'];
                } elseif (strlen($_POST['fail1']) > 0)
                {
                    // Проверка загрузки с Opera Mini
                    $do_file_mini = true;
                    $array = explode('file=', $_POST['fail1']);
                    $fname = strtolower($array[0]);
                    $filebase64 = $array[1];
                    $fsize = strlen(base64_decode($filebase64));
                }
                // Обработка файла (если есть)
                if ($do_file || $do_file_mini)
                {
                    // Список допустимых расширений файлов.
                    $al_ext = array_merge($ext_theme, $ext_java, $ext_sis, $ext_3d, $ext_pic, $ext_zip,
                        $ext_video, $ext_audio, $ext_other);
                    $ext = explode(".", $fname);
                    // Проверка на допустимый размер файла
                    if ($fsize > 1024 * ($flsz))
                        $error = 'Ошибка!<br />Вес файла превышает ' . ($flsz) .
                            ' кб.<br /><a href="?act=write' . $url . ($type == 'in' ? '&amp;mid=' . intval($_GET['mid']) :
                            '') . '">Повторить</a>';

                    // Проверка файла на наличие только одного расширения
                    if (count($ext) != 2)
                        $error = 'Ошибка!<br />Неправильное имя файла<br />К отправке разрешены только файлы имеющие имя и одно расширение (<b>name.ext</b>)<br />Запрещены файлы не имеющие имени, расширения, или с двойным расширением<br /><a href="?act=write' .
                            $url . ($type == 'in' ? '&amp;mid=' . intval($_GET['mid']) : '') .
                            '">Повторить</a>';

                    // Проверка допустимых расширений файлов
                    if (!in_array($ext[1], $al_ext))
                        $error = 'Ошибка!<br />Запрещенный тип файла<br />К отправке разрешены только файлы, имеющие следующее расширение:<br />' .
                            implode(', ', $al_ext) . '<br /><a href="?act=write' . $url . ($type == 'in' ?
                            '&amp;mid=' . intval($_GET['mid']) : '') . '">Повторить</a>';

                    // Проверка на длину имени
                    if (strlen($fname) > 30)
                        $error = 'Ошибка!<br />Длина названия файла не должна превышать 30 символов<br /><a href="?act=write' .
                            $url . ($type == 'in' ? '&amp;mid=' . intval($_GET['mid']) : '') .
                            '">Повторить</a>';

                    // Проверка на запрещенные символы
                    if (eregi("[^a-z0-9.()+_-]", $fname))
                        $error = 'Ошибка!<br />В названии файла присутствуют недопустимые символы<br />Разрешены только латинские символы, цифры и некоторые знаки ( .()+_- )<br />Запрещены пробелы<br /><a href="?act=write' .
                            $url . ($type == 'in' ? '&amp;mid=' . intval($_GET['mid']) : '') .
                            '">Повторить</a>';

                    // Проверка наличия файла с таким же именем
                    if (file_exists("files/$fname"))
                        $fname = $realtime . $fname;

                    // Окончательная обработка
                    if ($do_file && !$error)
                    {
                        // Для обычного браузера
                        if ((move_uploaded_file($_FILES["fail"]["tmp_name"], "files/$fname")) == true)
                        {
                            @chmod("$fname", 0777);
                            @chmod("files/$fname", 0777);
                            $file_att = 'Файл прикреплен<br />';
                        } else
                        {
                            $error = 'Ошибка прикрепления файла!<br /><a href="?act=write' . $url . ($type ==
                                'in' ? '&amp;mid=' . intval($_GET['mid']) : '') . '">Повторить</a>';
                        }
                    } elseif ($do_file_mini)
                    {
                        // Для Opera Mini
                        if (strlen($filebase64) > 0)
                        {
                            $FileName = "files/$fname";
                            $filedata = base64_decode($filebase64);
                            $fid = @fopen($FileName, "wb");
                            if ($fid)
                            {
                                if (flock($fid, LOCK_EX))
                                {
                                    fwrite($fid, $filedata);
                                    flock($fid, LOCK_UN);
                                }
                                fclose($fid);
                            }
                            if (file_exists($FileName) && filesize($FileName) == strlen($filedata))
                                $file_att = 'Файл прикреплён<br />';
                            else
                                $error = 'Ошибка прикрепления файла!<br /><a href="?act=write' . $url . ($type ==
                                    'in' ? '&amp;mid=' . intval($_GET['mid']) : '') . '">Повторить</a>';
                        }
                    }
                    // Определяем тип файла
                    $ext = strtolower($ext[1]);
                    if (in_array($ext, $ext_theme))
                        $type = 1;
                    elseif (in_array($ext, $ext_java))
                        $type = 2;
                    elseif (in_array($ext, $ext_sis))
                        $type = 3;
                    elseif (in_array($ext, $ext_3d))
                        $type = 4;
                    elseif (in_array($ext, $ext_pic))
                        $type = 5;
                    elseif (in_array($ext, $ext_zip))
                        $type = 6;
                    elseif (in_array($ext, $ext_video))
                        $type = 7;
                    elseif (in_array($ext, $ext_audio))
                        $type = 8;
                    else
                        $type = 9;
                }
            }

            if (!$error)
            {
                if ($_POST['trans'] == 1)
                    $text = trans($text);

                if ($_POST['cyt'] == 1)
                {
                    $cyt = mysql_fetch_array(mysql_query("SELECT `text` FROM `mail` WHERE `id`='" .
                        intval($_GET['mid']) . "' LIMIT 1 "));
                    $cyttxt = preg_replace('#\[c\](.*?)\[/c\]#si', '', $cyt['text']);
                    $cyttxt = mb_substr($cyttxt, 0, 200);
                    $text = '[c]' . functions::checkout($cyttxt, 2, 2) . '[/c]' . $text;
                }
                $res = mysql_fetch_array(mysql_query("SELECT `id`, `name` FROM `users` WHERE `name` LIKE '" .
                    mysql_real_escape_string($search) . "' LIMIT 1 "));


                mysql_query(" INSERT INTO `mail` SET
`time`='" . $realtime . "',
`type`='" . intval($_POST['type']) . "',
`to_id`='" . $res['id'] . "',
`to_login`='" . $res['name'] . "',
`from_id`='" . $user_id . "',
`from_login`='" . $login . "',
`text`='" . mysql_real_escape_string($text) . "'
");
                $mail_id = mysql_insert_id();

                if ($upl && $file_att)
                {
                    // Заносим данные в базу
                    mysql_query("INSERT INTO `mail_f` SET
`refid` = '" . $mail_id . "',
`type` = '" . $type . "',
`name` = '" . mysql_real_escape_string($fname) . "'
");
                }

                mysql_query("UPDATE `users` SET
      `lastpost` = '" . $realtime . "'
      WHERE `id` = '" . $user_id . "' ");

                echo '<div class="menu">' . $file_att .
                    'Письмо отправлено!<br /><a href="?">Далее</a>';
                if (!empty($_SESSION['back']))
                    echo ' | <a href="' . $_SESSION['back'] . '">Вернуться туда, откуда пришли</a>';
                echo '</div>';
            } else
            {
                echo functions::display_error($error);
            }
        } else
        {
            if ($id)
            {
                $res = mysql_fetch_array(mysql_query("SELECT `name` FROM `users` WHERE `id`='" .
                    $id . "' LIMIT 1 "));
                $to = $res['name'];
                $folder = $type == 'in' ? 'Входящие' : 'Исходящие';
            } else
            {
                $to = '';
                $form = '';
            }
            echo '<div class="phdr"><a href="?">Почта</a> | ' . ($id ? '<a href="?act=' . $type .
                '">' . $folder . '</a> | Ответ' : 'Написать') . '</div>';
            echo '<form name="form" action="?act=write' . $url . ($type == 'in' ?
                '&amp;mid=' . intval($_GET['mid']) : '') . '" method="post"' . ($upl ?
                ' enctype="multipart/form-data"' : '') . '>';
            echo '<div class="menu">Кому: <input type="text" name="name" value="' . $to .
                '" /></div>';
            echo '<div class="b">Метка: <select name="type"><option value="5">Нет</option><option value="1">Важно</option><option value="2">Вопрос</option><option value="3">Радость</option><option value="4">Грусть</option></select>';
            if ($id && $type == 'in')
                echo '<br /><input type="checkbox" name="cyt" value="1" /> Цитировать письмо<br />';
            echo '</div>';
            echo '<div class="gmenu">Текст:<br />' . bbcod('form', 'text') .
                '<center><textarea name="text" style="width:98%" cols="30" rows="4"></textarea></center>' .
                bbcode::auto_smile('form', 'text');
            if ($translit && $set_user['translit'])
                echo '<input type="checkbox" name="trans" value="1" /> Транслит<br />';
            if ($upl)
            {
                echo 'Файл (макс. ' . $flsz . ' кб.)<br />';
                if (!eregi("Opera/8.01", $agn))
                    echo '<input type="file" name="fail"/><br />';
                else
                    echo '<input name="fail1" value =""/><br /><a href="op:fileselect">Выбрать файл</a><br />';
            }

            if ($capcha)
            {
                echo '<table><tr><td><img src="../captcha.php?r=' . rand(1000, 9999) .
                    '" style="float: left;" alt="Проверочный код"/></td><td>';
                echo 'Код с картинки:<br/><input type="text" size="5" maxlength="5"  name="kod"/></td></tr></table>';
            }

            echo '<input type="submit" name="submit" value="Написать" /><br /><a href="../str/smile.php">Смайлы</a></div></form>';
        }
        break;

        /**спам*/
    case 'spam':
        if (!$id)
        {
            echo functions::display_error('Ошибка!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        $req = mysql_query("SELECT * FROM `mail` WHERE `id`='" . $id . "' LIMIT 1 ");
        if (!mysql_num_rows($req))
        {
            echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        $res = mysql_fetch_array($req);
        if ($res['to_id'] != $user_id)
        {
            echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }
        $check = mysql_fetch_array(mysql_query("SELECT `name`, `rights` FROM `users` WHERE `id`='" .
            $res['from_id'] . "' LIMIT 1 "));
        if ($check['rights'] >= 1)
        {
            echo functions::display_error('От администрации не может быть спама!<br /><a href="?act=in">Назад</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        if (isset($_GET['yes']))
        {
            $text = 'От пользователя [url=' . $home . '/str/anketa.php?id=' . $res['from_id'] .
                ']' . $res['from_login'] . '[/url] мне пришел спам![c]Текст письма:
' . ($res['text']) . '[/c]';
            mysql_query("INSERT INTO `mail` SET
`time`='" . $realtime . "',
`type`='1',
`to_id`='" . $spam_id . "',
`to_login`='Система',
`from_id`='" . $user_id . "',
`from_login`='" . $login . "',
`text`='" . mysql_real_escape_string($text) . "',
`del_from`='1'
 ");

            $text = 'Пользователь ' . $login . ' добавил вас в игнор
Причина: СПАМ!';
            mysql_query("INSERT INTO `mail` SET
`time`='" . $realtime . "',
`type`='1',
`to_id`='" . $res['from_id'] . "',
`to_login`='" . $res['from_login'] . "',
`from_id`='" . $user_id . "',
`from_login`='Система',
`text`='" . mysql_real_escape_string($text) . "',
`del_from`='1'
 ");

            mysql_query("INSERT INTO `mail_ignor` SET
`user_id`='" . $user_id . "',
`cont_id`='" . $res['from_id'] . "' ");
            if ($res['del_to'] == 1 || $res['del_from'] == 1)
            {
                mysql_query("DELETE FROM `mail` WHERE `id`='" . $id . "' LIMIT 1 ");
            } else
            {
                mysql_query("UPDATE `mail` SET `del_to`='1' WHERE `id`='" . $id . "' LIMIT 1 ");
            }
            header('Location: index.php?act=in');
        } else
        {
            echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=in&amp;id=' . $id .
                '">Письмо</a> | Спам</div>';
            echo '<div class="rmenu">Вы уверены что это спам?<br /><a href="?act=spam&amp;id=' .
                $id . '&amp;yes">Да</a> | <a href="?act=in">Нет</a></div><div class="b">Пользователь автоматически будет добавлен в игнор, администратору будет выслано сообщение о спаме!</div>';
        }
        break;

        /**Массовое удаление*/
    case 'massdel':
        if (empty($_GET['f']))
        {
            echo functions::display_error('Ошибка!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }
        if ($type == 'in')
        {
            $sql = "`del_to`='1', `read`='1' ";
        } else
        {
            $sql = "`del_from`='1'";
        }
        echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=' . $type . '">' . ($type ==
            'in' ? 'Входящие' : 'Исходящие') . '</a> | Удаление</div>';
        if (isset($_GET['read']))
        {
            if (isset($_GET['yes']))
            {
                $req = mysql_query("SELECT * FROM `mail` WHERE `to_id`='" . $user_id .
                    "' AND `read`='1' ");
                while ($res = mysql_fetch_array($req))
                {
                    if ($res['del_from'] == 1)
                    {
                        if ($upl)
                        {
                            $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $res['id'] .
                                "' LIMIT 1 ");
                            if (mysql_num_rows($file))
                            {
                                $file = mysql_fetch_array($file);
                                unlink('files/' . $file['name']);
                                mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                            }
                        }
                        mysql_query("DELETE FROM `mail` WHERE `id`='" . $res['id'] . "' LIMIT 1 ");
                    } else
                    {
                        mysql_query("UPDATE `mail` SET " . $sql . " WHERE `id`='" . $res['id'] .
                            "' AND `read`='1' LIMIT 1 ");
                    }
                }
                echo '<div class="menu">Прочитанные письма удалены<br /><a href="?act=' . $type .
                    '">Далее</a></div>';
            } else
            {
                echo '<div class="rmenu">Вы уверены в удалении прочитанных писем?<br /><a href="?act=massdel&amp;f=' .
                    $type . '&amp;read&amp;yes">Да</a> | <a href="?act=' . $type . '">Нет</a></div>';
            }
        } elseif (isset($_GET['all']))
        {
            if (isset($_GET['yes']))
            {
                $req = mysql_query("SELECT * FROM `mail` WHERE `" . ($type == 'in' ? 'to_id' :
                    'from_id') . "`='" . $user_id . "' ");
                while ($res = mysql_fetch_array($req))
                {
                    if (($type == 'out' && $res['del_to'] == 1) || ($type == 'in' && $res['del_from'] ==
                        1))
                    {
                        if ($upl)
                        {
                            $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $res['id'] .
                                "' LIMIT 1 ");
                            if (mysql_num_rows($file))
                            {
                                $file = mysql_fetch_array($file);
                                unlink('files/' . $file['name']);
                                mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                            }
                        }
                        mysql_query("DELETE FROM `mail` WHERE `id`='" . $res['id'] . "' LIMIT 1 ");
                    } else
                    {
                        mysql_query("UPDATE `mail` SET " . $sql . " WHERE `id`='" . $res['id'] .
                            "' LIMIT 1 ");
                    }
                }
                echo '<div class="menu">Все письма удалены<br /><a href="?act=' . $type .
                    '">Далее</a></div>';
            } else
            {
                echo '<div class="rmenu">Вы уверены в удалении всех писем?<br /><a href="?act=massdel&amp;f=' .
                    $type . '&amp;all&amp;yes">Да</a> | <a href="?act=' . $type . '">Нет</a></div>';
            }
        } else
        {
            if (isset($_GET['yes']))
            {

                $dc = $_SESSION['dc'];
                foreach ($dc as $delid)
                {
                    $check = mysql_fetch_array(mysql_query("SELECT * FROM `mail` WHERE `id`='" . $delid .
                        "' LIMIT 1 "));
                    if ($check['del_to'] == 1 || $check['del_from'] == 1)
                    {
                        mysql_query("DELETE FROM `mail` WHERE `id`='" . $delid . "' LIMIT 1 ");
                        if ($upl)
                        {
                            $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $delid .
                                "' LIMIT 1 ");
                            if (mysql_num_rows($file))
                            {
                                $file = mysql_fetch_array($file);
                                unlink('files/' . $file['name']);
                                mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                            }
                        }
                    } else
                    {
                        mysql_query("UPDATE `mail` SET $sql WHERE `id`='" . $delid . "' LIMIT 1 ");
                    }
                }
                echo '<div class="menu">Отмеченные письма удалены<br /><a href="?act=' . $type .
                    '">Далее</a></div>';
            } else
            {
                if (empty($_POST['delch']))
                {
                    echo functions::display_error('Вы ничего не выбрали для удаления!<br /><a href="?act=' .
                        $type . '">Назад</a>');
                    require_once ("../incfiles/end.php");
                    exit;
                }
                foreach ($_POST['delch'] as $v)
                {
                    $dc[] = intval($v);
                }
                $_SESSION['dc'] = $dc;
                echo '<div class="rmenu">Вы уверены в удалении писем?<br /><a href="?act=massdel&amp;f=' .
                    $type . '&amp;yes">Да</a> | <a href="?act=' . $type . '">Нет</a></div>';
            }
        }
        break;

        /**Удаление*/
    case 'del':
        if (!$id && empty($_GET['f']))
        {
            echo functions::display_error('Ошибка!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }
        $req = mysql_query("SELECT * FROM `mail` WHERE `id`='" . $id . "' LIMIT 1 ");
        if (!mysql_num_rows($req))
        {
            echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        $res = mysql_fetch_array($req);
        if (($type == 'in' && $res['to_id'] != $user_id) || ($type == 'out' && $res['from_id'] !=
            $user_id))
        {
            echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        if (isset($_GET['yes']))
        {
            if ($type == 'in')
            {
                $sql = "`del_to`='1', `read`='1'";
            } else
            {
                $sql = "`del_from`='1'";
            }

            if (($res['del_to'] == 1 || $res['del_from'] == 1) || $res['read'] == 0)
            {
                mysql_query("DELETE FROM `mail` WHERE `id`='" . $id . "' LIMIT 1 ");
                if ($upl)
                {
                    $file = mysql_query("SELECT * FROM `mail_f` WHERE `refid`='" . $id .
                        "' LIMIT 1 ");
                    if (mysql_num_rows($file))
                    {
                        $file = mysql_fetch_array($file);
                        unlink('files/' . $file['name']);
                        mysql_query("DELETE FROM `mail_f` WHERE `id`='" . $file['id'] . "' LIMIT 1 ");
                    }
                }
            } else
            {
                mysql_query("UPDATE `mail` SET " . $sql . " WHERE `id`='" . $id . "' LIMIT 1 ");
            }
            header('Location: ?act=' . $type);
        } else
        {
            echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=' . $type .
                '&amp;id=' . $id . '">Письмо</a> | Удаление</div>';
            if ($res['read'] == 0)
                echo '<div class="b">Письмо непрочитано и будет полностью удалено!</div>';
            echo '<div class="rmenu">Вы уверены в удалении письма?<br /><a href="?act=del&amp;id=' .
                $id . '&amp;f=' . $type . '&amp;yes">Да</a> | <a href="?act=' . $type .
                '&amp;id=' . $id . '">Нет</a></div>';
        }
        break;
        /**Сотрировка*/
    case 'sort':
        if ($_POST['submit'] && !empty($_POST['sort']))
        {
            if ($type == 'out')
            {
                $_SESSION['sortm_out'] = intval($_POST['sort']);
                header('Location: ?act=out');
            } elseif ($type == 'in')
            {
                $_SESSION['sortm_in'] = intval($_POST['sort']);
                header('Location: ?act=in');
            } else
            {
                echo functions::display_error('Вы не ввели условие!<br /><a href="?">Почта</a>');
            }
        } else
        {
            echo functions::display_error('Ошибка!<br /><a href="?">Почта</a>');
        }
        break;

        /**Фильтр*/
    case 'filter':
        echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=' . $type . '">' . ($type ==
            'in' ? 'Входящие' : 'Исходящие') . '</a> | Фильтр по автору</div>';
        if (isset($_GET['reset']))
        {
            unset($_SESSION['avtor_id_' . $type]);
            echo '<div class="menu">Фильтр по автору сброшен!<br /><a href="?act=' . $type .
                '">Далее</a></div>';
            require_once ('../incfiles/end.php');
            exit;
        }
        if (isset($_GET['select']))
        {
            unset($_SESSION['sortm']);
            $_SESSION['avtor_id_' . $type] = intval($_GET['select']);
            echo '<div class="menu">Выбран фильтр по автору<br /><a href="?act=' . $type .
                '">Далее</a></div>';
        } else
        {
            if ($type == 'in')
            {
                $sql = 'to_id';
                $sql_login = 'from_login';
                $sql_id = 'from_id';
                $sql_del = '`del_to`';
            } else
            {
                $sql = 'from_id';
                $sql_login = 'to_login';
                $sql_id = 'to_id';
                $sql_del = '`del_from`';
            }
            echo '<div class="rmenu">При выборе автора сортировка писем сбросится!</div>';
            $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail` WHERE `$sql`='" .
                $user_id . "' AND " . $sql_del . "!='1' "), 0);
            if ($total)
            {
                $req = mysql_query("SELECT * FROM `mail` WHERE `$sql`='" . $user_id . "' AND " .
                    $sql_del . "!='1' GROUP BY `$sql_id` ORDER BY $sql_login ");
                while ($res = mysql_fetch_array($req))
                {
                    echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';
                    echo '<a href="?act=filter&amp;f=' . $type . '&amp;select=' . $res[$sql_id] .
                        '">' . $res[$sql_login] . '</a>';
                    echo '</div>';
                    ++$i;
                }
                echo '<div class="phdr">Авторов: ' . $i . '</div>';
            }
        }
        break;

        /**Входящие*/
    case 'in':
        if ($id)
        {
            $req_m = mysql_query("SELECT `mail`.*, `mail`.`from_login` AS `name`, `users`.`id`, `users`.`sex`, `users`.`rights`, `users`.`lastdate`, `users`.`datereg` FROM `mail` LEFT JOIN `users` ON `mail`.`from_id` = `users`.`id` WHERE `mail`.`id`='" .
                $id . "' AND `del_to`!='1' LIMIT 1 ");

            if (!mysql_num_rows($req_m))
            {
                require_once ("../incfiles/head.php");
                echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
                require_once ('../incfiles/end.php');
                exit;
            }
            $res_m = mysql_fetch_array($req_m);
            if ($res_m['to_id'] != $user_id)
            {
                require_once ("../incfiles/head.php");
                echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
                require_once ('../incfiles/end.php');
                exit;
            }
            if ($res_m['read'] == 0 && $res_m['to_id'] == $user_id)
            {
                mysql_query("UPDATE `mail` SET `read`='1' WHERE `id`='" . $id . "' ");
            }

            require_once ("../incfiles/head.php");
            echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=in">Входящие</a> | Письмо</div>';
            //Не используется
            $date = '<span class="gray">(' . (date("d.m.y-H:i", $res_m['time'] + $set_user['sdvig'] *
                3600)) . ')</span>';
            $text = functions::checkout($res_m['text'], 1, 1);
            $text = functions::smileys($text, $res_m['rights'] ? 1 : 0);
            echo '<div class="menu">От: ' . display_user($res_m) .
                ' <span class="gray">(' . functions::display_date($res_m['time']) .
                ')</span><br/>' . $text; //show_user($res_m, 1, 0, $date, $text);
            if ($upl)
            {
                $req = mysql_query("SELECT `name` FROM `mail_f` WHERE `refid`='" . $id .
                    "' LIMIT 1 ");
                if (mysql_num_rows($req))
                {
                    $res = mysql_fetch_array($req);
                    $fls = round(filesize('./files/' . $res['name']) / 1024, 2);
                    echo '<div class="sub"><img src="../images/attach.png" width="16" height="16" align="middle" alt=""/> <a href="./files/' .
                        $res['name'] . '">' . $res['name'] . '</a> (' . $fls . 'кб.)</div>';
                }
            }
            echo '</div>';
            if (!$ban['1'] && !$ban['3'])
            {
                if ($qansw)
                {
                    echo '<div class="phdr">Быстрый ответ</div>';
                    echo '<form name="form" action="?act=write&amp;id=' . $res_m['from_id'] .
                        '&amp;f=in&amp;mid=' . $id . '" method="post"' . ($upl ?
                        ' enctype="multipart/form-data"' : '') . '>';
                    echo '<input type="hidden" name="name" value="' . $res_m['from_login'] . '" />';
                    echo '<div class="b">Метка: <select name="type"><option value="5">Нет</option><option value="1">Важно</option><option value="2">Вопрос</option><option value="3">Радость</option><option value="4">Грусть</option></select>';
                    echo '<br /><input type="checkbox" name="cyt" value="1" /> Цитировать письмо<br /></div>';
                    echo '<div class="gmenu">Текст:<br />' . bbcod('form', 'text') .
                        '<center><textarea name="text" style="width:98%" cols="30" rows="4"></textarea></center>' .
                        bbcode::auto_smile('form', 'text');
                    if ($translit && $set_user['translit'])
                        echo '<input type="checkbox" name="trans" value="1" /> Транслит<br />';
                    if ($upl)
                    {
                        echo 'Файл (макс. ' . $flsz . ' кб.)<br />';
                        if (!eregi("Opera/8.01", $agn))
                            echo '<input type="file" name="fail"/><br />';
                        else
                            echo '<input name="fail1" value =""/><br /><a href="op:fileselect">Выбрать файл</a><br />';
                    }

                    if ($capcha)
                    {
                        echo '<table><tr><td><img src="../captcha.php?r=' . rand(1000, 9999) .
                            '" style="float: left;" alt="Проверочный код"/></td><td>';
                        echo 'Код с картинки:<br/><input type="text" size="5" maxlength="5"  name="kod"/></td></tr></table>';
                    }

                    echo '<input type="submit" name="submit" value="Написать" /><br /><a href="../str/smile.php">Смайлы</a></div></form>';
                } else
                {
                    echo '<div class="gmenu"><form action="?act=write&amp;id=' . $res_m['from_id'] .
                        '&amp;f=in&amp;mid=' . $id .
                        '" method="post"><input type="submit" value="Написать" /></form></div>';
                }
            }
            echo '<div class="rmenu"><a href="?act=del&amp;id=' . $id .
                '&amp;f=in">Удалить</a> | <a href="?act=spam&amp;id=' . $id .
                '&amp;f=in">Спам</a></div>';
        } else
        {
            require_once ("../incfiles/head.php");
            echo '<div class="phdr"><a href="?">Почта</a> | Входящие</div>';
            if ($_SESSION['avtor_id_in'])
            {
                $sql = ' AND `from_id` = ' . intval($_SESSION['avtor_id_in']);
            } else
            {
                $sql = '';
            }
            $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail` WHERE `to_id`='" .
                $user_id . "'$sql AND `del_to`!='1' "), 0);
            if ($total)
            {
                if ($_SESSION['sortm_in'])
                {
                    $sort = intval(trim($_SESSION['sortm_in']));
                    switch ($sort)
                    {
                        case '1':
                            $sort_sql = '`time` DESC';
                            break;
                        case '2':
                            $sort_sql = '`to_login` ASC';
                            break;
                        case '3':
                            $sort_sql = '`type` ASC';
                            break;
                        default:
                            $sort_sql = '`time` DESC';
                    }
                } else
                {
                    $sort = 1;
                    $sort_sql = '`time` DESC';
                }
                $req = mysql_query("SELECT * FROM `mail` WHERE `to_id`='" . $user_id . "'$sql AND `del_to`!='1' ORDER BY $sort_sql LIMIT $start, $kmess ");
                echo '<form action="?act=massdel&amp;f=in" method="post">';
                while ($res = mysql_fetch_array($req))
                {
                    echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';
                    echo show_item($res, 'in');
                    echo '</div>';
                    ++$i;
                }
                echo '<div class="rmenu"><input type="submit" value=" Удалить" /></div></form>';
                echo '<div class="phdr">Всего: ' . $total . '</div>';
                if ($total > $kmess)
                {
                    echo '<p>' . functions::pagenav('?act=in&amp;', $start, $total, $kmess) . '</p>';
                    echo '<p><form action="index.php" method="get"><input type="hidden" name="act" value="in"/><input type="text" name="page" size="2"/><input type="submit" value="К странице &gt;&gt;"/></form></p>';
                }
                echo '<div class="menu">';
                echo '<form action="?act=sort&amp;f=in" method="post">Сортировка по:<br />
<select name="sort">';
                echo '<option value="1"' . ($sort == 1 ? ' selected="selected"' : '') .
                    '>Времени</option>
<option value="2"' . ($sort == 2 ? ' selected="selected"' : '') .
                    '>Автору</option>
<option value="3"' . ($sort == 3 ? ' selected="selected"' : '') .
                    '>Метке</option>
</select>';
                echo '<input type="submit" name="submit" value="OK"/><br /></form>';
                echo '<a href="?act=filter&amp;f=in">Фильтр по автору</a>' . ($_SESSION['avtor_id_in'] ?
                    ' | <a href="?act=filter&amp;f=in&amp;reset">Сброс</a>' : '');
                echo '</div>';
                echo '<div class="rmenu">Удалить: <a href="?act=massdel&amp;f=in&amp;read">Прочитанные</a> | <a href="?act=massdel&amp;f=in&amp;all">Все</a></div>';
            } else
            {
                echo '<div class="menu">Пусто</div>';
            }
        }
        break;

        /**Исходящие*/
    case 'out':
        echo '<div class="phdr"><a href="?">Почта</a> | ' . ($id ?
            '<a href="?act=out">Исходящие</a> | Письмо' : 'Исходящие') . '</div>';
        if ($id)
        {
            $req_m = mysql_query("SELECT `mail`.*, `mail`.`to_login` AS `name`, `users`.`id`, `users`.`sex`, `users`.`rights`, `users`.`lastdate`, `users`.`datereg` FROM `mail` LEFT JOIN `users` ON `mail`.`to_id` = `users`.`id` WHERE `mail`.`id`='" .
                $id . "' AND `del_from`!='1' LIMIT 1 ");

            if (!mysql_num_rows($req_m))
            {
                echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
                require_once ('../incfiles/end.php');
                exit;
            }
            $res_m = mysql_fetch_array($req_m);
            if ($res_m['from_id'] != $user_id)
            {
                echo functions::display_error('Нет такого письма!<br /><a href="?">Почта</a>');
                require_once ('../incfiles/end.php');
                exit;
            }

            //Не используется
            $date = '<span class="gray">(' . (date("d.m.y-H:i", $res_m['time'] + $set_user['sdvig'] *
                3600)) . ')</span>';
            $text = functions::checkout($res_m['text'], 1, 1);
            $text = functions::smileys($text, $res_m['rights'] ? 1 : 0);
            echo '<div class="menu">Для: ' . display_user($res_m) .
                ' <span class="gray">(' . functions::display_date($res_m['time']) .
                ')</span><br/>' . $text; //show_user($res_m, 1, 0, $date, $text);
            if ($upl)
            {
                $req = mysql_query("SELECT `name` FROM `mail_f` WHERE `refid`='" . $id .
                    "' LIMIT 1 ");
                if (mysql_num_rows($req))
                {
                    $res = mysql_fetch_array($req);
                    $fls = round(filesize('./files/' . $res['name']) / 1024, 2);
                    echo '<div class="sub"><img src="../images/attach.png" width="16" height="16" align="middle" alt=""/> <a href="./files/' .
                        $res['name'] . '">' . $res['name'] . '</a> (' . $fls . 'кб.)</div>';
                }
            }
            echo '</div>';
            if (!$ban['1'] && !$ban['3'])
            {
                if ($qansw)
                {
                    echo '<div class="phdr">Быстрый ответ</div>';
                    echo '<form name="form" action="?act=write&amp;id=' . $res_m['to_id'] .
                        '&amp;f=out" method="post"' . ($upl ? ' enctype="multipart/form-data"' : '') .
                        '>';
                    echo '<input type="hidden" name="name" value="' . $res_m['to_login'] . '" />';
                    echo '<div class="b">Метка: <select name="type"><option value="5">Нет</option><option value="1">Важно</option><option value="2">Вопрос</option><option value="3">Радость</option><option value="4">Грусть</option></select></div>';
                    echo '<div class="gmenu">Текст:<br />' . bbcod('form', 'text') .
                        '<center><textarea name="text" style="width:98%" cols="30" rows="4"></textarea></center>' .
                        bbcode::auto_smile('form', 'text');
                    if ($translit && $set_user['translit'])
                        echo '<input type="checkbox" name="trans" value="1" /> Транслит<br />';
                    if ($upl)
                    {
                        echo 'Файл (макс. ' . $flsz . ' кб.)<br />';
                        if (!eregi("Opera/8.01", $agn))
                            echo '<input type="file" name="fail"/><br />';
                        else
                            echo '<input name="fail1" value =""/><br /><a href="op:fileselect">Выбрать файл</a><br />';
                    }

                    if ($capcha)
                    {
                        echo '<table><tr><td><img src="../captcha.php?r=' . rand(1000, 9999) .
                            '" style="float: left;" alt="Проверочный код"/></td><td>';
                        echo 'Код с картинки:<br/><input type="text" size="5" maxlength="5"  name="kod"/></td></tr></table>';
                    }

                    echo '<input type="submit" name="submit" value="Написать" /><br /><a href="../str/smile.php">Смайлы</a></div></form>';
                } else
                {
                    echo '<div class="gmenu"><form action="?act=write&amp;id=' . $res_m['to_id'] .
                        '&amp;f=out" method="post"><input type="submit" value="Написать" /></form></div>';
                }
            }
            echo '<div class="rmenu">' . ($res_m['read'] ? '' : '<a href="?act=edit&amp;id=' .
                $id . '">Редактир.</a> | ') . '<a href="?act=del&amp;id=' . $id .
                '&amp;f=out">Удалить</a></div>';
        } else
        {
            if ($_SESSION['avtor_id_out'])
            {
                $sql = ' AND `to_id` = ' . intval($_SESSION['avtor_id_out']);
            } else
            {
                $sql = '';
            }
            $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail` WHERE `from_id`='" .
                $user_id . "'$sql AND `del_from`!='1' "), 0);
            if ($total)
            {
                if ($_SESSION['sortm_out'])
                {
                    $sort = intval(trim($_SESSION['sortm_out']));
                    switch ($sort)
                    {
                        case '1':
                            $sort_sql = '`time` DESC';
                            break;
                        case '2':
                            $sort_sql = '`to_login` ASC';
                            break;
                        case '3':
                            $sort_sql = '`type` ASC';
                            break;
                        default:
                            $sort_sql = '`time` DESC';
                    }
                } else
                {
                    $sort = 1;
                    $sort_sql = '`time` DESC';
                }
                $req = mysql_query("SELECT * FROM `mail` WHERE `from_id`='" . $user_id . "'$sql AND `del_from`!='1' ORDER BY $sort_sql LIMIT $start, $kmess ");
                echo '<form action="?act=massdel&amp;f=out" method="post">';
                while ($res = mysql_fetch_array($req))
                {
                    echo ($i % 2) ? '<div class="list1">' : '<div class="list2">';
                    echo show_item($res, 'out');
                    echo '</div>';
                    ++$i;
                }
                echo '<div class="rmenu"><input type="submit" value=" Удалить" /></div></form>';
                echo '<div class="phdr">Всего: ' . $total . '</div>';
                if ($total > $kmess)
                {
                    echo '<p>' . functions::pagenav('?act=out&amp;', $start, $total, $kmess) .
                        '</p>';
                    echo '<p><form action="index.php" method="get"><input type="hidden" name="act" value="out"/><input type="text" name="page" size="2"/><input type="submit" value="К странице &gt;&gt;"/></form></p>';
                }
                echo '<div class="menu">';
                echo '<form action="?act=sort&amp;f=out" method="post">Сортировка по:<br />
<select name="sort">';
                echo '<option value="1"' . ($sort == 1 ? ' selected="selected"' : '') .
                    '>Времени</option>
<option value="2"' . ($sort == 2 ? ' selected="selected"' : '') .
                    '>Автору</option>
<option value="3"' . ($sort == 3 ? ' selected="selected"' : '') .
                    '>Метке</option>
</select>';
                echo '<input type="submit" name="submit" value="OK"/><br /></form>';
                echo '<a href="?act=filter&amp;f=out">Фильтр по автору</a>' . ($_SESSION['avtor_id_out'] ?
                    ' | <a href="?act=filter&amp;f=out&amp;reset">Сброс</a>' : '');
                echo '</div>';
                echo '<div class="rmenu">Удалить: <a href="?act=massdel&amp;f=out&amp;all">Все</a></div>';
            } else
            {
                echo '<div class="menu">Пусто</div>';
            }
        }
        break;

        /**добавление/удаление из игнора*/
    case 'editignor':
        if (!$id)
        {
            echo functions::display_error('Ошибка!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }

        $user = mysql_fetch_array(mysql_query("SELECT `name` FROM `users` WHERE `id`='" .
            $id . "' LIMIT 1 "));
        $check = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_ignor` WHERE `user_id`='" .
            $user_id . "' AND `cont_id`='" . $id . "' "), 0);
        if ($check)
        {
            if (isset($_GET['yes']))
            {
                $text = 'Пользователь ' . $login . ' удалил вас из игнора!';
                mysql_query("INSERT INTO `mail` SET
`time`='" . $realtime . "',
`type`='1',
`to_id`='" . $id . "',
`to_login`='" . $user['name'] . "',
`from_id`='" . $user_id . "',
`from_login`='" . $login . "',
`text`='" . mysql_real_escape_string($text) . "',
`del_from`='1'
 ");

                mysql_query("DELETE FROM `mail_ignor` WHERE `user_id`='" . $user_id .
                    "' AND `cont_id`='" . $id . "' ");
                echo '<div class="menu">Пользователь удален из списка игнора<br /><a href="?">Далее</a></div>';
            } else
            {
                echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=ignor">Игнор</a> | Редактирование</div>';
                echo '<div class="rmenu">Вы действительно хотите удалить пользователя из игнора?<br /><a href="?act=editignor&amp;id=' .
                    $id . '&amp;yes">Да</a> | <a href="../user/anketa.php?id=' . $id .
                    '">Нет</a></div>';
            }
        } else
        {
            $check = mysql_fetch_array(mysql_query("SELECT `rights` FROM `users` WHERE `id`='" .
                $id . "' LIMIT 1 "));
            if ($check['rights'] >= 1)
            {
                echo functions::display_error('Администрацию нельзя в игнор!');
                require_once ('../incfiles/end.php');
                exit;
            }
            if (isset($_GET['yes']))
            {
                $text = 'Пользователь ' . $login . ' добавил вас в игнор!';
                mysql_query("INSERT INTO `mail` SET
`time`='" . $realtime . "',
`type`='1',
`to_id`='" . $id . "',
`to_login`='" . $user['name'] . "',
`from_id`='" . $user_id . "',
`from_login`='" . $login . "',
`text`='" . mysql_real_escape_string($text) . "',
`del_from`='1'
 ");
                mysql_query("INSERT INTO `mail_ignor` SET
`user_id`='" . $user_id . "',
`cont_id`='" . $id . "' ");
                echo '<div class="menu">Пользователь добавлен в список игнора<br /><a href="?">Далее</a></div>';
            } else
            {
                echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=ignor">Игнор</a> | Редактирование</div>';
                echo '<div class="menu">Вы действительно хотите добавить пользователя в игнор?<br /><a href="?act=editignor&amp;id=' .
                    $id . '&amp;yes">Да</a> | <a href="../user/anketa.php?id=' . $id .
                    '">Нет</a></div>';
            }
        }
        break;

        /**игнор*/
    case 'ignor':
        echo '<div class="phdr"><a href="?">Почта</a> | Игнор</div>';
        $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_ignor` WHERE `user_id`='" .
            $user_id . "' "), 0);
        if ($total)
        {
            $req = mysql_query("SELECT `mail_ignor`.*, `mail_ignor`.`id` AS `fid`, `users`.`id`, `users`.`name`, `users`.`sex`, `users`.`status`, `users`.`rights`, `users`.`lastdate`, `users`.`datereg` FROM `mail_ignor` LEFT JOIN `users` ON `mail_ignor`.`cont_id` = `users`.`id` WHERE `mail_ignor`.`user_id` = '" .
                $user_id . "' ORDER BY `mail_ignor`.`id` LIMIT $start, $kmess ");
            while ($res = mysql_fetch_array($req))
            {
                echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';
                $sub = '<a href="?act=editignor&amp;id=' . $res['cont_id'] . '">Из игнора</a>';
                echo display_user($res) . '<br/>' . $sub; //show_user($res, 1, 0, 0, 0, $sub);
                echo '</div>';
                ++$i;
            }
            echo '<div class="phdr">Всего: ' . $total . '</div>';
            if ($total > $kmess)
            {
                echo '<p>' . functions::pagenav('?act=ignor&amp;', $start, $total, $kmess) .
                    '</p>';
                echo '<p><form action="index.php" method="get"><input type="hidden" name="act" value="ignor"/><input type="text" name="page" size="2"/><input type="submit" value="К странице &gt;&gt;"/></form></p>';
            }
        } else
        {
            echo '<div class="menu">Пусто</div>';
        }
        break;

        /**добавление/удаление контакта*/
    case 'editcontact':
        if (!$id)
        {
            echo functions::display_error('Ошибка!<br /><a href="?">Почта</a>');
            require_once ('../incfiles/end.php');
            exit;
        }
        $check = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_cont` WHERE `user_id`='" .
            $user_id . "' AND `cont_id`='" . $id . "' "), 0);
        if ($check)
        {
            if (isset($_GET['yes']))
            {
                mysql_query("DELETE FROM `mail_cont` WHERE `user_id`='" . $user_id .
                    "' AND `cont_id`='" . $id . "' ");
                echo '<div class="menu">Пользователь удален из списка котактов<br /><a href="?">Далее</a></div>';
            } else
            {
                echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=contacts">Контакты</a> | Редактирование</div>';
                echo '<div class="menu">Вы действительно хотите удалить пользователя из контактов?<br /><a href="?act=editcontact&amp;id=' .
                    $id . '&amp;yes">Да</a> | <a href="../user/anketa.php?id=' . $id .
                    '">Нет</a></div>';
            }
        } else
        {
            if (isset($_GET['yes']))
            {
                mysql_query("INSERT INTO `mail_cont` SET
`user_id`='" . $user_id . "',
`cont_id`='" . $id . "' ");
                echo '<div class="menu">Пользователь добавлен в список котактов<br /><a href="?">Далее</a></div>';
            } else
            {
                echo '<div class="phdr"><a href="?">Почта</a> | <a href="?act=contacts">Контакты</a> | Редактирование</div>';
                echo '<div class="menu">Вы действительно хотите добавить пользователя в контакты?<br /><a href="?act=editcontact&amp;id=' .
                    $id . '&amp;yes">Да</a> | <a href="../user/anketa.php?id=' . $id .
                    '">Нет</a></div>';
            }
        }
        break;

        /**контакты*/
    case 'contacts':
        echo '<div class="phdr"><a href="?">Почта</a> | Контакты</div>';
        $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_cont` WHERE `user_id`='" .
            $user_id . "' "), 0);
        if ($total)
        {
            $req = mysql_query("SELECT `mail_cont`.*, `mail_cont`.`id` AS `fid`, `users`.`id`, `users`.`name`, `users`.`sex`, `users`.`status`, `users`.`rights`, `users`.`lastdate`, `users`.`datereg` FROM `mail_cont` LEFT JOIN `users` ON `mail_cont`.`cont_id` = `users`.`id` WHERE `mail_cont`.`user_id` = '" .
                $user_id . "' ORDER BY `mail_cont`.`id` LIMIT $start, $kmess");
            while ($res = mysql_fetch_array($req))
            {
                echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';
                $sub = (($ban['1'] || $ban['3']) ? '' : '<a href="?act=write&amp;id=' . $res['cont_id'] .
                    '">Написать</a> | ') . '<a href="?act=editcontact&amp;id=' . $res['cont_id'] .
                    '">Из контактов</a>';
                echo display_user($res) . '<br/>' . $sub; //show_user($res, 1, 0, 0, 0, $sub);
                echo '</div>';
                ++$i;
            }
            echo '<div class="phdr">Всего: ' . $total . '</div>';
            if ($total > $kmess)
            {
                echo '<p>' . functions::pagenav('?act=contacts&amp;', $start, $total, $kmess) .
                    '</p>';
                echo '<p><form action="index.php" method="get"><input type="hidden" name="act" value="contacts"/><input type="text" name="page" size="2"/><input type="submit" value="К странице &gt;&gt;"/></form></p>';
            }
        } else
        {
            echo '<div class="menu">Контактов нет</div>';
        }
        break;

        /**Новые письма*/
    case 'new':
        if (isset($_GET['reset']))
        {
            mysql_query("UPDATE `mail` SET `read`='1' WHERE `to_id`='" . $user_id .
                "' AND `read`!='1' ");
            echo '<div class="menu">Все писма приняты как прочитанные<br /><a href="?">Почта</a></div>';
            require_once ('../incfiles/end.php');
            exit;
        }
        echo '<div class="phdr"><a href="?">Почта</a> | Новые письма</div>';

        $_SESSION['back'] = htmlspecialchars(getenv("HTTP_REFERER"));

        if ($in_new)
        {
            if ($in_new == 1)
            {
                $direct = mysql_fetch_array(mysql_query("SELECT * FROM `mail` WHERE `to_id`='" .
                    $user_id . "' AND `read`!='1' ORDER BY `time` DESC LIMIT 1 "));
                header('Location: ?act=in&id=' . $direct['id']);
                exit;
            }
            $req = mysql_query("SELECT * FROM `mail` WHERE `to_id`='" . $user_id .
                "' AND `read`!='1' ORDER BY `time` DESC LIMIT $start, $kmess ");
            while ($res = mysql_fetch_array($req))
            {
                echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';
                echo show_item($res, 'new');
                echo '</div>';
                ++$i;
            }
            echo '<div class="phdr">Всего: ' . $in_new . '</div>';
            if ($in_new > $kmess)
            {
                echo '<p>' . functions::pagenav('?act=new&amp;', $start, $in_new, $kmess) .
                    '</p>';
                echo '<p><form action="index.php" method="get"><input type="hidden" name="act" value="new"/><input type="text" name="page" size="2"/><input type="submit" value="К странице &gt;&gt;"/></form></p>';
            }
            echo '<div class="rmenu"><a href="?act=new&amp;reset">Прочитать все</a></div>';
        } else
        {
            echo '<div class="menu">Пусто</div>';
        }
        break;

        /**Админка*/
    case 'admin':
        if ($rights >= 8)
        {
            echo '<div class="phdr"><a href="?">Почта</a> | Админка</div>';
            echo '<div class="menu"><a href="?act=masssend">Массовая рассылка</a><br /><a href="?act=clean">Чистка почты</a><br /><a href="?act=userdel">Чистка активности пользователя</a></div>';
        } else
        {
            echo functions::display_error('У вас недостаточно прав');
        }
        break;

    default:
        echo '<div class="phdr">Почта</div>';
        $in = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail` WHERE `to_id`='" . $user_id .
            "' AND `del_to`!='1' "), 0);
        $out = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail` WHERE `from_id`='" .
            $user_id . "' AND `del_from`!='1' "), 0);
        $contact = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_cont` WHERE `user_id`='" .
            $user_id . "' "), 0);
        $ignor = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_ignor` WHERE `user_id`='" .
            $user_id . "' "), 0);
        echo '<div class="menu"><a href="?act=in">Входящие</a> [' . $in . ($in_new ?
            '/<span class="red"><a href="?act=new">+' . $in_new . '</a></span>' : '') .
            ']<br />';
        echo '<a href="?act=out">Исходящие</a> [' . $out . ']<br />';
        echo '<a href="?act=contacts">Контакты</a> [' . $contact .
            ']<br /><a href="?act=ignor">Игнор</a> [' . $ignor . ']</div>';
        if (!$ban['1'] && !$ban['3'])
            echo '<div class="gmenu"><form action="?act=write" method="post"><input type="submit" value="Написать" /></form></div>';
        if ($rights >= 8)
        {
            echo '<div class="rmenu"><a href="?act=admin">Админка</a></div>';
        }
}
require_once ('../incfiles/end.php');

?>